// Learn cc.Class:
//  - [Chinese] https://docs.cocos.com/creator/manual/zh/scripting/class.html
//  - [English] http://docs.cocos2d-x.org/creator/manual/en/scripting/class.html
// Learn Attribute:
//  - [Chinese] https://docs.cocos.com/creator/manual/zh/scripting/reference/attributes.html
//  - [English] http://docs.cocos2d-x.org/creator/manual/en/scripting/reference/attributes.html
// Learn life-cycle callbacks:
//  - [Chinese] https://docs.cocos.com/creator/manual/zh/scripting/life-cycle-callbacks.html
//  - [English] https://www.cocos2d-x.org/docs/creator/manual/en/scripting/life-cycle-callbacks.html


var G = require("./util/g");
cc.Class({
    extends: cc.Component,

    properties: {
        // foo: {
        //     // ATTRIBUTES:
        //     default: null,        // The default value will be used only when the component attaching
        //                           // to a node for the first time
        //     type: cc.SpriteFrame, // optional, default is typeof default
        //     serializable: true,   // optional, default is true
        // },
        // bar: {
        //     get () {
        //         return this._bar;
        //     },
        //     set (value) {
        //         this._bar = value;
        //     }
        // },

        pipe1: cc.Prefab,
        pipe2: cc.Prefab,
        score: cc.Label,
        pipe_time: 0,
        start_lab: cc.Node,
        over_lab: cc.Node
    },

    // LIFE-CYCLE CALLBACKS:

    onLoad() {
        cc.director.getPhysicsManager().enabled = true;
        G.root = this.node;
        G.bird = this.node.getChildByName("bird");
        G.pipe1_pool = new cc.NodePool();
        G.pipe2_pool = new cc.NodePool();
        G.pipe1 = this.pipe1;
        G.pipe2 = this.pipe2;
        G.score = this.score;
        G.over_lab = this.over_lab;
    },

    start() {

    },

    update(dt) {
        if (G.start) {
            this.start_lab.active = false;
        }
        if (G.game_over) {
            this.over_lab.active = true;
        }
    },
});
